Mutable locks: Combining the best of spin and sleep locks
نویسندگان
چکیده
منابع مشابه
Real-time scalability of nested spin locks
When a real-time system is realized on a sharedmemory multiprocessor, the worst-case performance of interprocessor synchronizations is one of the most important issues. In this paper, scalability of the maximum execution times of critical sections guarded by nested spin locks is discussed. With the simplest method, the maximum execution times become O(n m ), where n is the number of contending ...
متن کاملScalable Spin Locks for Multiprogrammed Systems
Synchronization primitives for large scale multiprocessors need to provide low latency and low contention to achieve good performance. Queue-based locks (implemented in software with fetch and instructions) can greatly reduce contention and improve overall performance by arranging for processors to spin only on local locations. Unfortunately, queued locks exhibit poor behavior in the presence o...
متن کاملTransactional Mutex Locks
Mutual exclusion (mutex) locks limit concurrency but offer low single-thread latency. Software transactional memory (STM) typically has much higher latency, but scales well. We present transactional mutex locks (TML), which attempt to achieve the best of both worlds for read-dominated workloads. We also propose compiler optimizations that reduce the latency of TML to within a small fraction of ...
متن کاملPriority Inheritance Spin Locks for Multiprocessor Real-Time Systems
When a real-time system is realized on a shared-memory multiprocessor, priority-ordered spin locks are often required to reduce priority inversions. However, simple priority-ordered spin locks can cause uncontrolled priority inversions when they are used for nested spin locks. This paper points out the problem of uncontrolled priority inversions in the context of spin locks and proposes priorit...
متن کاملLight-weight Locks
In this paper, we propose a new approach to building synchronization primitives, dubbed “lwlocks” (short for light-weight locks). The primitives are optimized for small memory footprint while maintaining efficient performance in low contention scenarios. A read-write lwlock occupies 4 bytes, a mutex occupies 4 bytes (2 if deadlock detection is not required), and a condition variable occupies 4 ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Concurrency and Computation: Practice and Experience
سال: 2020
ISSN: 1532-0626,1532-0634
DOI: 10.1002/cpe.5858